iT邦幫忙

2025 iThome 鐵人賽

DAY 3
0

第一次看此系列文的朋友,請先移步到 Day 1 – 如何開始?進行方式、自我介紹實戰 哦!

🎬 情境故事

技術面試時,考官在白板上寫了一題演算法題目,要你邊思考邊解釋過程。我會卡在「不知道怎麼開頭」、「解釋思路不夠有條理」,或者一緊張就只想寫程式碼,卻忽略了英文口說的邏輯表達。只會說「This is ...」、「If ... then do ...」。

今天的目標:選一個簡單的演算法題,不寫程式碼,只專注在「口頭解釋邏輯」。

🤖 Config Prompt

[Config]
- Day: Day3 – Whiteboard Problem Explanation
- Scenario: Job interview — explaining a whiteboard coding problem in English. The whiteboard coding problem is 'Contains Duplicate' from LeetCode.

👉 在練習之前...

先閱讀一下 Config 中提供的演算法題「Contains Duplicate」,並思考一下你會怎麼解。

然後按照這個步驟,想一下:

  1. 問題是什麼
  2. 使用什麼資料結構
  3. 程式流程
  4. 時間複雜度、空間複雜度

並且把關鍵字寫下來。

我的關鍵字:

  1. distinct element
  2. hashmap
  3. check if each element is in hashmap or not. store the element into hashmap.
  4. time: bigO(N), space: bigO(N)

🎯 開始進行練習

記得把對話錄下來,自己聽一次,想想有哪裡不自然。

📌 小技巧

可以不用一次說完,一個步驟一個步驟說。也可以 Follow GPT 的引導。

🆘 今日救命句

  • 救命句(簡短切入):

    Let me walk you through my thought process.

  • 爭取思考時間:

    Give me a moment to think about it.

🔑 核心句型

  1. 開始解題思路

    • First, I want to clarify the problem.
    • I will start by identifying the inputs and outputs.
  2. 解釋邏輯流程

    • I will try a simple solution first, then optimize.
    • We can break the problem into smaller steps.
  3. 說明邊界條件/效能

    • We should also consider edge cases such as…
    • This solution works, but the time complexity is O(n²).
  4. 收尾與總結

    • To summarize, my solution is…
    • The key idea here is…
  5. 描述程式結構 / 寫程式過程

    • I will start with a function called …
    • I declare a variable to store …
    • This loop goes through each element in the array.
  6. 說明條件判斷

    • If the value matches the condition, then we …
    • Otherwise, the program will …
    • This check ensures that invalid input is handled.
  7. 解釋程式碼的作用

    • This line initializes the data structure.
    • This part updates the result after each iteration.
    • This function helps us to reuse the logic.
  8. 描述測資 / 執行流程

    • For example, if the input is [2, 3, 5], the output will be …
    • Let’s walk through the code with a sample input.
    • Step by step, the function produces the correct result.

📝 我的今日反饋

今天在練習之前,有一場跟 CEO 的 Behavior Interview。

結果一跟外國人講話就又原形畢露了,完全沒在管文法。但是後續有發現我太急著要說了,所以有刻意慢下來,一個字一個字說清楚。

今天的練習就很仔細把我想講的先想清楚再慢慢說。

然後我發現使用「If ....」就很好用了,不用特別去說「When」或是其他狀況用詞。

1.	Per-turn Corrections:
	•	Turn 3: You said “if there is any element appear before.”
	•	Rewrite: “If there is any element that appears before.”
	•	Alternative: “If we see a repeated element, we return true.”
	2.	Top 3 Patterns:
	•	Sometimes missing the “s” for plurals. Just remember to add “s” for plural words.
	•	Tending to say “duplicated” instead of “duplicate.” Keep it simple with “duplicate.”
	•	Sometimes leaving out little words like “that.” Remember: “an element that appears.”
	3.	Phrase Pack:
	•	“We’ll use a hash map to store elements.”
	•	“If we find a duplicate, we return true.”
	•	“If there are no duplicates, we return false.”
	•	“We just iterate through the array.”
	•	“This is how we solve the problem.”
	4.	Intonation Tip:
	•	Try stressing the word “if” at the start of a condition. For example: “IF we find a duplicate, we return true.” This makes your conditions clearer.
	5.	Fluency & Pronunciation Notes:
	•	You spoke at a nice, steady pace.
	•	Your pronunciation of technical terms was clear.
	•	Just remember those small plural endings.
	•	Great job keeping your sentences short and clear.
	•	Overall, you sounded confident by the end.
	6.	Key Focus for Next Time:
	•	Let’s focus on consistent plurals.
	•	Practice a bit more on using “if” clauses confidently.
	•	For a quick drill: Spend two minutes shadowing these corrected sentences and one minute doing a summary of the solution in your own words.

上一篇
Day 2 – 專案經驗分享
下一篇
Day 4 – 系統設計
系列文
和我一起挑戰!工程師英文口說 30 天 GPT 語音練習日記4
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言